package org.jeecg.modules.ParameterModule.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.ParameterModule.entity.*;

import java.util.List;

public interface FormalCategoryInfoService extends IService<CountDataInfo> {
    /** --------------------------------------正式区域------------------------------------*/
    /**添加pine类列表*/
    int add_category_pinglei2(MlccCategoryTestInfo testInfo);
    /**编辑pine类名称*/
    int update_category_pingleiName(MlccCategoryTestInfo testInfo);
    /**根据id查询品类详情*/
    MlccCategoryTestInfo select_testcategoryDetail(String category_id);
    /**根据编号查询正式品类详情*/
    MlccCategoryInfo select_zscategoryDetail(String category_code);
    /**根据编号和上级id查询正式参数详情*/
    MlccCategoryInfo select_canshuDetailById(String category_code,String zs_pingleiId);
    /**根据编号和上级和定制id查询正式品类详情*/
    MlccCategoryInfo select_zscategoryDetailByother(String category_code,String zs_pingleiId,String dingzhi_id);

    /**根据编号和上级id查询正式品类详情*/
    MlccCategoryInfo select_zscategoryDetail2(String category_code,String topid);


    /**统计定制项*/
    int count_dingzhi(String category_id);
    /**统计互斥项*/
    int count_huchi(String category_id);
    /**统计绣字工艺*/
    int count_xiuzi(String category_id);
    /**统计撞色项*/
    int count_zhuangse(String category_id);
    /**统计净体尺寸*/
    int count_jing_bodysize(String category_id);
    /**统计成衣尺寸*/
    int count_cheng_bodysize(String category_id);
    /**统计返修项*/
    int count_fanxiu(String category_id);
    /**统计工艺类型*/
    int count_gongyi(@Param("category_id")String category_id);
    /**统计绣字颜色*/
    int count_xiuzi_color(@Param("category_id")String category_id);
    /**统计绣字字体*/
    int count_xiuzi_font(@Param("category_id")String category_id);
    /**统计绣字图片*/
    int count_xiuzi_img(@Param("category_id")String category_id);

    /**根据品类id查询定制项*/
    List<SmalltemplateTestInfo> query_dingzhiBycategoryId(String category_id);
    /**根据定制项id查询定制项*/
    SmalltemplateTestInfo query_dingzhiBydingzhId(String dingzhi_id);
    /**新增定制项*/
    int add_dingzhi(SmalltemplateTestInfo dingzhi);
    /**编辑定制项*/
    int update_dingzhi(SmalltemplateTestInfo dingzhi);
    /**删除定制项*/
    int delete_dingzhi(String dingzhi_id);
    /**测试参数列表*/
    IPage<MlccCategoryTestInfo> query_testCanshuPageList(Page<MlccCategoryTestInfo> page,String topcategory_id,String module_id,String queryName);
    /**新增定制项下的参数*/
    int add_dingzhi_canshu(MlccCategoryTestInfo dingzhi);
    /**编辑定制项下的参数*/
    int update_dingzhi_canshu(MlccCategoryTestInfo dingzhi);
    /**删除定制项下的参数*/
    int delete_dingzhi_canshu(String canshu_id);
    /**测试互斥项列表*/
    IPage<MutexTestInfo> query_testHuchiPageList(Page<MutexTestInfo> page, String topid, String queryName, String queryTime);
    /**新增互斥项*/
    int add_huchi(MutexTestInfo mutexTestInfo);
    /**编辑互斥项*/
    int update_huchi(MutexTestInfo mutexTestInfo);
    /**删除互斥项*/
    int delete_huchi(String huchi_id);
    /**查询定制下的所有参数*/
    List<MlccCategoryTestInfo> querycanshuall(String module_id);
    /**根据定制项id查询定制项*/
    MutexTestInfo query_huzhiBydId(String huchi_id);
    /**根据name查询品类详情*/
    MlccCategoryTestInfo select_testlbDetailByname(String category_name);
    /**根据name查询定制项详情*/
    SmalltemplateTestInfo select_testDingzhiByname(String category_name);

    /**测试绣字部位列表*/
    IPage<CategoryLocationTestInfo> query_testlocaltionPageList(Page<CategoryLocationTestInfo> page, String category_id, String queryName, String queryCode);
    /**测试绣字颜色列表*/
    IPage<EmbroideredColorTestInfo> query_testColorPageList(Page<EmbroideredColorTestInfo> page,String category_id,String queryName, String queryCode);
    /**测试绣字图片列表*/
    IPage<EmbroideredFontTestInfo> query_testImgPageList(Page<EmbroideredFontTestInfo> page,String category_id,String queryName, String queryCode);
    /**测试绣字字体列表*/
    IPage<EmbroideredFontTestInfo> query_testFontPageList(Page<EmbroideredFontTestInfo> page,String category_id,String queryName, String queryCode);

    /**新增定绣字-部位*/
    int add_xiuzi_location(CategoryLocationTestInfo testinfo);
    /**编辑绣字-部位*/
    int update_xiuzi_location(CategoryLocationTestInfo testinfo);
    /**删除绣字-部位*/
    int delete_xiuzi_location(String id);
    /**新增定绣字-颜色*/
    int add_xiuzi_color(EmbroideredColorTestInfo testinfo);
    /**编辑绣字-颜色*/
    int update_xiuzi_color(EmbroideredColorTestInfo testinfo);
    /**删除绣字-颜色*/
    int delete_xiuzi_color(String id);
    /**新增绣字-字体图片*/
    int add_xiuzi_fontImg(EmbroideredFontTestInfo testinfo);
    /**编辑绣字-字体图片*/
    int update_xiuzi_fontImg(EmbroideredFontTestInfo testinfo);
    /**删除绣字-字体图片*/
    int delete_xiuzi_fontImg(String id);
    /**新增绣字-字体图片-大小价格*/
    int add_xiuzi_fontImgSize(EmbroideredFontTestInfo testinfo);
    /**编辑绣字-字体图片-大小价格*/
    int update_xiuzi_fontImgSize(EmbroideredFontTestInfo testinfo);
    /**根据条件查询绣字类型价格*/
    EmbroideredFontTestInfo select_pricebyid(String leixing,String size);
    /**根据id查询绣字位置详情*/
    CategoryLocationTestInfo select_test_xiuzi_locationDetail(String id);
    /**根据id查询绣字颜色详情*/
    EmbroideredColorTestInfo select_test_xiuzi_colorDetail(String id);
    /**根据id查询绣字字体图片详情*/
    EmbroideredFontTestInfo select_test_xiuzi_imgDetail(String id);
    /**测试撞色列表*/
    IPage<ContrastcolorTestInfo> query_testzhuangsePageList(Page<ContrastcolorTestInfo> page,String category_id,String queryName, String queryTime);
    /**新增撞色*/
    int add_zhuangse(ContrastcolorTestInfo testinfo);
    /**编辑撞色*/
    int update_zhuangse(ContrastcolorTestInfo testinfo);
    /**删除撞色*/
    int delete_zhuangse(String id);
    /**查询撞色详情*/
    ContrastcolorTestInfo query_zhuangseDetail(String id);

    /**身体尺寸查询*/
    IPage<BodySizeTestInfo> query_testBodySizePageList(Page<BodySizeTestInfo> page,String type,String category_id,String queryName, String queryTime);
    /**新增尺寸*/
    int add_testbodySize(BodySizeTestInfo testinfo);
    /**编辑尺寸*/
    int update_testbodySize(BodySizeTestInfo testinfo);
    /**删除尺寸*/
    int delete_testbodySize(String id);
    /**查询尺寸详情*/
    BodySizeTestInfo query_bodySizeDetail(String id);

    /**返修尺寸查询*/
    IPage<CategoryFanxiuTestInfo> query_testFanxiuSizePageList(Page<CategoryFanxiuTestInfo> page,String category_id,String queryName, String queryTime);
    /**新增返修尺寸*/
    int add_testFanxiuSize(CategoryFanxiuTestInfo testinfo);
    /**编辑返修尺寸*/
    int update_testFanxiuSize(CategoryFanxiuTestInfo testinfo);
    /**删除返修尺寸*/
    int delete_testfanxiuSize(String id);
    /**查询返修尺寸详情*/
    CategoryFanxiuTestInfo query_FanxiuSizeDetail(String id);
    /**根据类型查询测试pine类列表*/
    IPage<MlccCategoryTestInfo> query_testCategoryPageListBytype(Page<MlccCategoryTestInfo> page,String category_id,String type,String queryName, String queryCode);
    /**删除品类或工艺*/
    int delete_testcategory(String id);

    /**根据品类id查询参数*/
    List<MlccCategoryTestInfo> query_AllcanshuBypingleiId(String category_id);
    /**根据品类id查询所有互斥*/
    List<MutexTestInfo> query_AllhuchiBypingleiId(String category_id);
    /** //根据品类id查询绣字部位*/
    List<CategoryLocationTestInfo> query_Allxiuzi1BypingleiId(String category_id);
    /**根据品类id查询所有绣字颜色*/
    List<EmbroideredColorTestInfo> query_AllxiuziColorBypingleiId(String category_id);
    /**根据品类id查询所有绣字字体*/
    List<EmbroideredFontTestInfo> query_AllxiuziFontBypingleiId(String category_id);
    /**根据品类id查询所有绣字图片*/
    List<EmbroideredFontTestInfo> query_AllxiuziImgBypingleiId(String category_id);
    /**根据品类id查询所有撞色*/
    List<ContrastcolorTestInfo> query_AllzhuangseBypingleiId(String category_id);
    /**根据品类id查询所有净体尺寸*/
    List<BodySizeTestInfo> query_AlljingtiBodysizeBypingleiId(String category_id);
    /**根据品类id查询所有返修*/
    List<CategoryFanxiuTestInfo> query_AllFanxiuBypingleiId(String category_id);
    /**根据品类id查询所有工艺*/
    List<MlccCategoryTestInfo> query_AllGongyiBypingleiId(String category_id);
    /**根据品类id查询所有系统加急*/
    List<AddSystemPriceInfo> query_AllsyspriceBypingleiId(String category_id,int type);
    /**根据品类id查询所有绣字高度*/
    List<EmbroidedHeightInfo> query_AllxiuziHeightBypingleiId(String category_id);
    //插入启用记录
    int add_qiyong_record(String category_id,String is_ping,String is_qiyong,String remark,String create_by,String sys_org_code);
    //根据品类id查询启用记录
    List<QiyongListInfo> query_QiyongRecrod(String category_id);
    /**价格体系-添加类别表*/
    int add_pricesystem_category(String category_id,String business_type,String business_name,String is_gongyi,String create_by,String sys_org_code);
    /**根据正式表中的测试品类id查询品类详情*/
    MlccCategoryInfo select_formal_categoryDetail(String testcategory_id);

    /**是否采用体型数据*/
    int update_category_size(String category_id,String is_size);
    /**新增系统加急项，正式*/
    int add_fomal_syspriceinfo(AddSystemPriceInfo testinfo);
    /**删除系统加急项，正式*/
    int del_fomal_syspriceinfo(String id);

    /**测试加急项*/
    IPage<AddSystemPriceInfo> query_addpricePageList(Page<AddSystemPriceInfo> page,String category_id,String partent_id,String queryName, String queryTime);
    AddSystemPriceInfo query_addsyspriceDetail(String id);
    /**查询所欲上级加价项*/
    List<AddSystemPriceInfo> query_alladdsysprice(String category_id);

    /**根据工艺id查询价格体系表*/
    AddSystemPriceInfo select_addSystempriceInfo(String gongyi_id,String is_ding);
    /**根据编号和名称和上级id查询正式的工艺详情*/
    MlccCategoryInfo select_canshu_gongyiDetailById(String category_code,String category_name,String zs_pingleiId,int type);
    /**测试绣字高度列表*/
    IPage<EmbroidedHeightInfo> query_testHeightPageList(Page<EmbroidedHeightInfo> page,String category_id,String queryName, String queryCode);
    /**修改正式类别的状态*/
    int edit_category_status(String category_id,String status);


    /**
     * 根据定制项名称和品类id查询定制项--正式
     * */
    ModuleSmalltemplateInfo queryDingzhiDetailByName(String name,String category_id,int status,int type);
    /**
     * 根据参数编号和品类id查询定制项下的参数--正式
     * */
    MlccCategoryInfo querycanshuDetailByCode(String code,String category_id,String dingzhi_id,int status,int type);
    /**
     * 根据zhuangs编号和品类id查询撞色--正式
     * */
    ContrastcolorInfo queryZhuangseDetailByCode(String code,String category_id,int status,int type);
    /**
     * 根据返修名称和品类id查询返修--正式
     * */
    CategoryFanxiuInfo queryfanxiuDetailByName(String name,String category_id,int status,int type);
    /**
     * 根据收费类型名称和品类id查询收费类型--正式
     * */
    AddSystemPriceInfo queryshTypeDetailByName(String name,String category_id,int status,int type);
    /**
     * 根据收费名称和品类id查询收费--正式
     * */
    AddSystemPriceInfo queryshoufeiDetailByName(String name,String category_id,int status,int type);

    /**
     * 根据定制项id修改定制项--正式
     * */
     int change_dingzhi(SmalltemplateTestInfo testinfo);
    /**
     * 根据参数id修改定制项下的参数--正式
     * */
    int change_dingzhi_canshu(MlccCategoryTestInfo testinfo);
    /**
     * 根据撞色id修改撞色--正式
     * */
    int change_zhuangse(ContrastcolorTestInfo testinfo);
    /**
     * 根据返修id修改返修--正式
     * */
    int change_fanxiu(CategoryFanxiuTestInfo testinfo);
    /**
     * 根据收费id修改收费服务--正式
     * */
    int change_shoufei(AddSystemPriceInfo testinfo);
}
